MySQL SUM() 函数使用指南 |
您所在的位置:网站首页 › mysql sum函数返回null › MySQL SUM() 函数使用指南 |
MySQL SUM() 函数计算所有指定的非 NULL 值的总和并返回。 SUM() 语法这里是 MySQL SUM() 函数的语法: SUM(expr)我们通常在 SQL 中按如下方式使用 SUM() 函数: SELECT SUM(expr), ... FROM table_name [WHERE ...];或者按如下方式结合 GROUP BY 子句使用 SUM() 函数: SELECT SUM(expr), group_expr1, group_expr2, ... FROM table_name [WHERE ...] GROUP BY group_expr1, group_expr2, ...; 参数 expr expr 一个需要统计数量的表达式。它可以是一个列名,也可以是一个表达式。 group_expr1, group_expr2, ... 用于分组的表达式或者列名。 返回值SUM(expr) 函数返回所有指定的非 NULL 值的总和。 如果没有匹配的行,SUM() 函数返回 NULL。 SUM() 示例我们将通过 student_score 表进行演示。让我们先创建演示表并插入测试数据。 DROP TABLE IF EXISTS `student_score`; CREATE TABLE `student_score` ( `id` INT PRIMARY KEY AUTO_INCREMENT, `name` VARCHAR(255) NOT NULL, `subject` VARCHAR(255) NOT NULL, `score` INT ); INSERT INTO `student_score` (`name`, `subject`, `score`) VALUES ('Tom', 'Math', 80), ('Tom', 'English', 90), ('Jim', 'Math', 84), ('Jim', 'English', 96), ('Tim', 'Math', NULL), ('Tim', 'English', 98);以下是表中的数据: +----+------+---------+-------+ | id | name | subject | score | +----+------+---------+-------+ | 1 | Tom | Math | 80 | | 2 | Tom | English | 90 | | 3 | Jim | Math | 84 | | 4 | Jim | English | 96 | | 5 | Tim | Math | NULL | | 6 | Tim | English | 98 | +----+------+---------+-------+ SUM() 简单例子以下 SQL 语句返回 student_score 表中的所有分数的总和。 SELECT SUM(score) from student_score; +------------+ | SUM(score) | +------------+ | 448 | +------------+ SUM() 结合 GROUP BY让我们使用 SUM() 结合 GROUP BY 来从更多的维度统计总分数。 按科目统计总分数 SELECT subject, SUM(score) FROM student_score GROUP BY subject; +---------+------------+ | subject | SUM(score) | +---------+------------+ | Math | 164 | | English | 284 | +---------+------------+这里,MySQL 会根据 GROUP BY subject 首先按照 subject 将结果集分组,然后在每个组内再执行 SUM(score)。 按名称统计总分数 SELECT name, SUM(score) FROM student_score GROUP BY name; +------+------------+ | name | SUM(score) | +------+------------+ | Tom | 170 | | Jim | 180 | | Tim | 98 | +------+------------+这里,MySQL 会根据 GROUP BY name 首先按照 name 将结果集分组,然后在每个组内再执行 SUM(score)。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |